package com.yinhe.system.service;

import java.util.List;

import com.yinhe.system.domain.YhEnterprise;
import com.yinhe.system.domain.YhEnterpriseLeader;

/**
 * 承制单位信息Service接口
 * 
 * @author yinhe
 * @date 2022-07-13
 */
public interface IYhEnterpriseService 
{
    /**
     * 查询承制单位信息
     * 
     * @param id 承制单位信息主键
     * @return 承制单位信息
     */
    public YhEnterprise selectYhEnterpriseById(Long id);

    /**
     * 查询承制单位信息列表
     * 
     * @param yhEnterprise 承制单位信息
     * @return 承制单位信息集合
     */
    public List<YhEnterprise> selectYhEnterpriseList(YhEnterprise yhEnterprise);

    /**
     * 新增承制单位信息
     * 
     * @param yhEnterprise 承制单位信息
     * @return 结果
     */
    public int insertYhEnterprise(YhEnterprise yhEnterprise);

    /**
     * 新增承制单位领导信息
     *
     * @param yhEnterpriseLeader 承制单位领导信息
     * @return 结果
     */
    public int insertYhEnterpriseLeader(YhEnterpriseLeader yhEnterpriseLeader);

    /**
     * 修改承制单位信息
     * 
     * @param yhEnterprise 承制单位信息
     * @return 结果
     */
    public int updateYhEnterprise(YhEnterprise yhEnterprise);

    /**
     * 批量删除承制单位信息
     * 
     * @param ids 需要删除的承制单位信息主键集合
     * @return 结果
     */
    public int deleteYhEnterpriseByIds(Long[] ids);

    /**
     * 删除承制单位信息信息
     * 
     * @param id 承制单位信息主键
     * @return 结果
     */
    public int deleteYhEnterpriseById(Long id);

    /**
     * 导入用户数据
     *
     * @param userList 用户数据列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作用户
     * @return 结果
     */
    public String importEnterprise(List<YhEnterprise> enterpriseList, Boolean isUpdateSupport , String operName);
}
